Part Number Hot Search : 
TDA8601 1N4747 SZ3036 BCW29 MMSZ5231 1CY103 ADF4117 CDBA260
Product Description
Full Text Search
 

To Download ADM1030 Datasheet File

  If you can't view the Datasheet, Please click here to try to view without PDF Reader .  
 
 


  Datasheet File OCR Text:
 a
FEATURES Optimized for Pentium(R) III: Allows Reduced Guardbanding Software and Automatic Fan Speed Control Automatic Fan Speed Control Allows Control Independent of CPU Intervention after Initial Setup Control Loop Minimizes Acoustic Noise and Battery Consumption Remote Temperature Measurement Accurate to 1 C Using Remote Diode 0.125 C Resolution on Remote Temperature Channel Local Temperature Sensor with 0.25 C Resolution Pulsewidth Modulation Fan Control (PWM) Programmable PWM Frequency Programmable PWM Duty Cycle Tach Fan Speed Measurement Analog Input To Measure Fan Speed of 2-Wire Fans (Using Sense Resistor) 2-Wire System Management Bus (SMBus) with ARA Support Overtemperature THERM Output Pin Programmable INT Output Pin Configurable Offset for All Temperature Channels 3 V to 5.5 V Supply Range Shutdown Mode to Minimize Power Consumption APPLICATIONS Notebook PCs, Network Servers and Personal Computers Telecommunications Equipment
Intelligent Temperature Monitor and PWM Fan Controller ADM1030*
PRODUCT DESCRIPTION
The ADM1030 is an ACPI-compliant two-channel digital thermometer and under/over temperature alarm, for use in computers and thermal management systems. Optimized for the Pentium III, the higher 1C accuracy offered allows systems designers to safely reduce temperature guardbanding and increase system performance. A Pulsewidth Modulated (PWM) Fan Control output controls the speed of a cooling fan by varying output duty cycle. Duty cycle values between 33%-100% allow smooth control of the fan. The speed of the fan can be monitored via a TACH input for a fan with a tach output. The TACH input can be programmed as an analog input, allowing the speed of a 2-wire fan to be determined via a sense resistor. The device will also detect a stalled fan. A dedicated Fan Speed Control Loop provides control even without the intervention of CPU software. It also ensures that if the CPU or system locks up, the fan can still be controlled based on temperature measurements, and the fan speed adjusted to correct any changes in system temperature. Fan Speed may also be controlled using existing ACPI software. One input (two pins) is dedicated to a remote temperaturesensing diode with an accuracy of 1C, and a local temperature sensor allows ambient temperature to be monitored. The device has a programmable INT output to indicate error conditions. There is a dedicated FAN_FAULT output to signal fan failure. The THERM pin is a fail-safe output for over-temperature conditions that can be used to throttle a CPU clock.
FUNCTIONAL BLOCK DIAGRAM
VCC ADD
ADM1030
NC NC
SLAVE ADDRESS REGISTER FAN CHARACTERISTICS REGISTER
SERIAL BUS INTERFACE ADDRESS POINTER REGISTER INTERRUPT STATUS REGISTER LIMIT COMPARATOR VALUE AND LIMIT REGISTERS OFFSET REGISTERS CONFIGURATION REGISTER
SDA SCL NC INT THERM
PWM_OUT
PWM CONTROLLER
FAN SPEED CONFIG REGISTER TMIN /T RANGE REGISTER
FAN_FAULT
TACH/AIN D+ D-
TACH SIGNAL CONDITIONING
FAN SPEED COUNTER
NC
BANDGAP TEMPERATURE SENSOR
ANALOG MULTIPLEXER
ADC
2.5V BANDGAP REFERENCE
*Patents pending. Pentium is a registered trademark of Intel Corporation.
GND
NC = NO CONNECT
REV. 0
Information furnished by Analog Devices is believed to be accurate and reliable. However, no responsibility is assumed by Analog Devices for its use, nor for any infringements of patents or other rights of third parties which may result from its use. No license is granted by implication or otherwise under any patent or patent rights of Analog Devices. One Technology Way, P.O. Box 9106, Norwood, MA 02062-9106, U.S.A. Tel: 781/329-4700 www.analog.com Fax: 781/326-8703 (c) Analog Devices, Inc., 2001
ADM1030-SPECIFICATIONS1 (T = T
A
MIN
to TMAX, VCC = VMIN to VMAX, unless otherwise noted.)
Max 5.5 3 50 3 1 Unit V mA A C C C C A A Test Conditions/Comments
Parameter POWER SUPPLY Supply Voltage, VCC Supply Current, ICC TEMPERATURE-TO-DIGITAL CONVERTER Internal Sensor Accuracy Resolution External Diode Sensor Accuracy Resolution Remote Sensor Source Current OPEN-DRAIN DIGITAL OUTPUTS (THERM, INT, FAN_FAULT, PWM_OUT) Output Low Voltage, VOL High-Level Output Leakage Current, I OH DIGITAL INPUT LEAKAGE CURRENT Input High Current, IIH Input Low Current, IIL Input Capacitance, CIN DIGITAL INPUT LOGIC LEVELS (ADD, THERM, TACH) Input High Voltage, VIH Input Low Voltage, VIL
2
Min 3.0
Typ 3.30 1.4 32 1 0.25 0.125 180 11
Interface Inactive, ADC Active Standby Mode
60C TD 100C High Level Low Level
0.1 -1
0.4 1
V A A A pF
IOUT = -6.0 mA; VCC = 3 V VOUT = VCC; VCC = 3 V VIN = VCC VIN = 0
1 5
2.1 0.8
V V
OPEN-DRAIN SERIAL DATA BUS OUTPUT (SDA) Output Low Voltage, VOL High-Level Output Leakage Current, I OH SERIAL BUS DIGITAL INPUTS (SCL, SDA) Input High Voltage, VIH Input Low Voltage, VIL Hysteresis FAN RPM-TO-DIGITAL CONVERTER Accuracy Resolution TACH Nominal Input RPM
0.1
0.4 1
V A
IOUT = -6.0 mA; VCC = 3 V VOUT = VCC
2.1 0.8 500 6 8 4400 2200 1100 550 637 10 50 4.7 4.7 4 4 1.3 4 100
V V mV % Bits RPM RPM RPM RPM ms kHz ns s s s s s s ns ns ns ns 60C TA 100C Divisor N = 1, Fan Count = 153 Divisor N = 2, Fan Count = 153 Divisor N = 4, Fan Count = 153 Divisor N = 8, Fan Count = 153
Conversion Cycle Time SERIAL BUS TIMING3 Clock Frequency, fSCLK Glitch Immunity, tSW Bus Free Time, tBUF Start Setup Time, tSU;STA Start Hold Time, tHD;STA Stop Condition Setup Time t SU;STO SCL Low Time, tLOW SCL High Time, tHIGH SCL, SDA Rise Time, t R SCL, SDA Fall Time, t F Data Setup Time, t SU;DAT Data Hold Time, tHD;DAT
50 1000 300
250 300
See Figure 1 See Figure 1 See Figure 1 See Figure 1 See Figure 1 See Figure 1 See Figure 1 See Figure 1 See Figure 1 See Figure 1 See Figure 1 See Figure 1
NOTES 1 Typicals are at T A = 25C and represent most likely parametric norm. Shutdown current typ is measured with V CC = 3.3 V. 2 ADD is a three-state input that may be pulled high, low or left open-circuit. 3 Timing specifications are tested at logic levels of V IL = 0.8 V for a falling edge and V IH = 2.2 V for a rising edge. Specifications subject to change without notice.
-2-
REV. 0
ADM1030
ABSOLUTE MAXIMUM RATINGS* ORDERING GUIDE
Positive Supply Voltage (VCC) . . . . . . . . . . . . . . . . . . . . 6.5 V Voltage on Any Input or Output Pin . . . . . . . . -0.3 V to +6.5 V Input Current at Any Pin . . . . . . . . . . . . . . . . . . . . . . . 5 mA Package Input Current . . . . . . . . . . . . . . . . . . . . . . . 20 mA Maximum Junction Temperature (TJMAX) . . . . . . . . . . 150C Storage Temperature Range . . . . . . . . . . . . -65C to +150C Lead Temperature, Soldering Vapor Phase 60 sec . . . . . . . . . . . . . . . . . . . . . . . . . 215C Infrared 15 sec . . . . . . . . . . . . . . . . . . . . . . . . . . . . 200C ESD Rating All Pins . . . . . . . . . . . . . . . . . . . . . . . . . . 2000 V
*Stresses above those listed under Absolute Maximum Ratings may cause permanent damage to the device. This is a stress rating only; functional operation of the device at these or any other conditions above those indicated in the operational section of this specification is not implied. Exposure to absolute maximum rating conditions for extended periods may affect device reliability.
Model ADM1030ARQ
Temperature Range 0C to 100C
Package Description
Package Option
16-Lead QSOP RQ-16
THERMAL CHARACTERISTICS
16-Lead QSOP Package JA = 105C/W, JC = 39C/W
tLOW
SCL
tR
tF
tHD:STA
tHD:STA
SDA
tHD:DAT
tHIGH
tSU:DAT
tSU:STA
tSU:STO
tBUF
P S S P
Figure 1. Diagram for Serial Bus Timing
REV. 0
-3-
ADM1030
PIN FUNCTION DESCRIPTIONS
Pin No. 1 2 3, 4, 11, 12 5 6 7
Mnemonic PWM_OUT TACH/AIN NC GND VCC THERM
Description Digital Output (Open-Drain). Pulsewidth modulated output to control fan speed. Requires pullup resistor (10 k typical). Digital/Analog Input. Fan tachometer input to measure fan speed. May be reprogrammed as an analog input to measure speed of a 2-wire fan via a sense resistor (2 typical) Not Connected. System Ground. Power. Can be powered by 3.3 V Standby power if monitoring in low power states is required. Digital I/O (Open-Drain). An active low thermal overload output that indicates a violation of a temperature set point (overtemperature). Also acts as an input to provide external fan control. When this pin is pulled low by an external signal, a status bit is set, and the fan speed is set to full-on. Requires pull-up resistor (10 k). Digital Output (Open-Drain). Can be used to signal a fan failure. Requires pull-up resistor (typically 10 k). Analog Input. Connected to cathode of an external temperature-sensing diode. The temperaturesensing element is either a Pentium III substrate transistor or a general-purpose 2N3904. Analog Input. Connected to anode of the external temperature-sensing diode. Three-state Logic Input. Sets two lower bits of device SMBus address. Digital Output (Open-Drain). Can be programmed as an interrupt output for temperature/fan speed interrupts. Requires pull-up resistor (10 k typical). Digital I/O. Serial Bus Bidirectional Data. Open-drain output. Requires pull-up resistor (2.2 k typical). Digital Input. Serial Bus Clock. Requires pull-up resistor (2.2 k typ).
8 9 10 13 14 15 16
FAN_FAULT D- D+ ADD INT SDA SCL
PIN CONFIGURATION
PWM_OUT 1 TACH/AIN 2 NC 3 NC 4
16 SCL 15 SDA
ADM1030
14 INT
13 ADD TOP VIEW GND 5 (Not to Scale) 12 NC
VCC 6 THERM 7 FAN_FAULT 8
11 NC 10 D+ 9
D-
NC = NO CONNECT
-4-
REV. 0
Typical Performance Characteristics-ADM1030
15 REMOTE TEMPERATURE ERROR - C 10 90 5 0 DXP TO VCC (3.3V) -5 -10
READING - C
110 100
80 DXP TO GND 70 60 50 40 30 20
-15 10 -20 1 3.3 10 30 LEAKAGE RESISTANCE - M 100 0 0 10 20 30 70 80 60 40 50 PIII TEMPERATURE - C 90 100 110
TPC 1. Temperature Error vs. PCB Track Resistance
TPC 4. Pentium III Temperature Measurement vs. ADM1030 Reading
17
REMOTE TEMPERATURE ERROR - C
15 13 11 9 7 5 3 1 -1 0 500k 2M
VIN = 200mV p-p 4M 6M 10M FREQUENCY - Hz 100M 400M
REMOTE TEMPERATURE ERROR - C
VIN = 100mV p-p
1 0 -1 -2 -3 -4 -5 -6 -7 -8 -9 -10 -11 -12 -13 -14 -15 -16 1 2.2 3.3 10 4.7 DXP - DXN CAPACITANCE - nF 22 47
TPC 2. Temperature Error vs. Power Supply Noise Frequency
TPC 5. Temperature Error vs. Capacitance between D+ and D-
7
REMOTE TEMPERATURE ERROR - C
110 100
6 5 4 3 VIN = 40mV p-p 2 1 0 VIN = 20mV p-p -1 0 100k 1M 300M 100M 200M FREQUENCY - Hz 400M 500M
A SUPPLY CURRENT -
90 80 70 60 50 40 30 20 10 0 0 1 5 10 75 100 250 25 50 SCLK FREQUENCY - kHz 500 750 1000 VCC = 3.3V VCC = 5V
TPC 3. Temperature Error vs. Common-Mode Noise Frequency
TPC 6. Standby Current vs. Clock Frequency
REV. 0
-5-
ADM1030
7 VIN = 30mV p-p
0.08 0 -0.08
REMOTE TEMPERATURE ERROR - C
6 5 4 3 2 1 0 -1 0 100k 1M 300M 100M 200M FREQUENCY - Hz 400M 500M VIN = 20mV p-p
-0.16
ERROR - C
-0.24 -0.32 -0.40 -0.48 -0.56 -0.64 -0.72 -0.80 0 20 40 60 80 85 100 TEMPERATURE - C 105 120
TPC 7. Temperature Error vs. Differential-Mode Noise Frequency
TPC 10. Remote Sensor Error
200 180 160 140 120 100 80 60 40 ADD = VCC 20 0 -20 0 1.1 1.3 1.5 1.7 1.9 2.1 SUPPLY VOLTAGE - V 2.5 2.9 4.5 ADD = GND ADD = Hi-Z
SUPPLY CURRENT - mA
120
1.30 1.25 1.20 1.15 1.10 1.05 1.00 0.95 0.90 0.85 0.80 2.0 2.2 2.4 2.6 2.8 3.0 3.2 3.4 3.6 3.8 4.0 4.2 4.4 4.6 4.8 5.0 SUPPLY VOLTAGE - V
TPC 8. Standby Supply Current vs. Supply Voltage
SUPPLY CURRENT -
A
TPC 11. Supply Current vs. Supply Voltage
0.16 0.08 0 -0.08
120 110 100 90 TEMPERATURE - C
0 20 40 60 80 85 100 TEMPERATURE - C 105
-0.16
ERROR - C
-0.24 -0.32 -0.40 -0.48 -0.56 -0.64 -0.72 -0.80 -0.88
80 70 60 50 40 30 20 10 0 0 1 2 3 4 5 6 TIME - Sec 7 8 9 10
TPC 9. Local Sensor Error
TPC 12. Response to Thermal Shock
-6-
REV. 0
ADM1030
GENERAL DESCRIPTION
The ADM1030 is a temperature monitor and PWM fan controller for microprocessor-based systems. The device communicates with the system via a serial System Management Bus. The serial bus controller has a hardwired address pin for device selection (Pin 13), a serial data line for reading and writing addresses and data (Pin 15), and an input line for the serial clock (Pin 16). All control and programming functions of the ADM1030 are performed over the serial bus. The device also supports the SMBus Alert Response Address (ARA) function.
INTERNAL REGISTERS OF THE ADM1030
three-state input that can be grounded, connected to VCC, or left open-circuit to give three different addresses. The state of the ADD pin is only sampled at power-up, so changing ADD with power on will have no effect until the device is powered off, then on again.
Table I. ADD Pin Truth Table
ADD Pin GND No Connect VCC
A1 0 1 0
A0 0 0 1
A brief description of the ADM1030's principal internal registers is given below. More detailed information on the function of each register is given in Table XII to Table XXVI.
Configuration Register
If ADD is left open-circuit, the default address will be 0101110. The facility to make hardwired changes at the ADD pin allows the user to avoid conflicts with other devices sharing the same serial bus, for example, if more than one ADM1030 is used in a system. The serial bus protocol operates as follows: 1. The master initiates data transfer by establishing a START condition, defined as a high-to-low transition on the serial data line SDA while the serial clock line SCL remains high. This indicates that an address/data stream will follow. All slave peripherals connected to the serial bus respond to the START condition, and shift in the next 8 bits, consisting of a 7-bit address (MSB first) plus an R/W bit that determines the direction of the data transfer, i.e., whether data will be written to or read from the slave device. The peripheral whose address corresponds to the transmitted address responds by pulling the data line low during the low period before the ninth clock pulse, known as the Acknowledge Bit. All other devices on the bus now remain idle while the selected device waits for data to be read from or written to it. If the R/W bit is a 0, the master will write to the slave device. If the R/W bit is a 1, the master will read from the slave device. 2. Data is sent over the serial bus in sequences of nine clock pulses, eight bits of data followed by an Acknowledge Bit from the slave device. Transitions on the data line must occur during the low period of the clock signal and remain stable during the high period, as a low-to-high transition when the clock is high may be interpreted as a STOP signal. The number of data bytes that can be transmitted over the serial bus in a single READ or WRITE operation is limited only by what the master and slave devices can handle. 3. When all data bytes have been read or written, stop conditions are established. In WRITE mode, the master will pull the data line high during the tenth clock pulse to assert a STOP condition. In READ mode, the master device will override the acknowledge bit by pulling the data line high during the low period before the ninth clock pulse. This is known as No Acknowledge. The master will then take the data line low during the low period before the tenth clock pulse, then high during the tenth clock pulse to assert a STOP condition. Any number of bytes of data may be transferred over the serial bus in one operation, but it is not possible to mix read and write in one operation, because the type of operation is determined at the beginning and cannot subsequently be changed without starting a new operation. -7-
Provides control and configuration of various functions on the device.
Address Pointer Register
This register contains the address that selects one of the other internal registers. When writing to the ADM1030, the first byte of data is always a register address, which is written to the Address Pointer Register.
Status Registers
These registers provide status of each limit comparison.
Value and Limit Registers
The results of temperature and fan speed measurements are stored in these registers, along with their limit values.
Fan Speed Config Register
This register is used to program the PWM duty cycle for the fan.
Offset Registers
Allows the temperature channel readings to be offset by a 5-bit two's complement value written to these registers. These values will automatically be added to the temperature values (or subtracted from if negative). This allows the systems designer to optimize the system if required, by adding or subtracting up to 15C from a temperature reading.
Fan Characteristics Register
This register is used to select the spin-up time, PWM frequency, and speed range for the fan used.
THERM Limit Registers
These registers contain the temperature values at which THERM will be asserted.
TMIN/TRANGE Registers
These registers are read/write registers that hold the minimum temperature value below which the fan will not run when the device is in Automatic Fan Speed Control Mode. These registers also hold the values defining the range over that auto fan control will be provided, and hence determines the temperature at which the fan will run at full speed.
SERIAL BUS INTERFACE
Control of the ADM1030 is carried out via the SMBus. The ADM1030 is connected to this bus as a slave device, under the control of a master device, e.g., the 810 chipset. The ADM1030 has a 7-bit serial bus address. When the device is powered up, it will do so with a default serial bus address. The five MSBs of the address are set to 01011, the two LSBs are determined by the logical state of Pin 13 (ADD). This is a REV. 0
ADM1030
In the case of the ADM1030, write operations contain either one or two bytes, and read operations contain one byte, and perform the following functions. To write data to one of the device data registers or read data from it, the Address Pointer Register must be set so that the correct data register is addressed; data can then be written into that register or read from it. The first byte of a write operation always contains an address that is stored in the Address Pointer Register. If data is to be written to the device, then the write operation contains a second data byte that is written to the register selected by the address pointer register. This is illustrated in Figure 2a. The device address is sent over the bus followed by R/W set to 0. This is followed by two data bytes. The first data byte is the address of the internal data register to be written to, which is stored in the Address Pointer Register. The second data byte is the data to be written to the internal data register. When reading data from a register there are two possibilities: 1. If the ADM1030's Address Pointer Register value is unknown or not the desired value, it is first necessary to set it to the correct value before data can be read from the desired data register. This is done by performing a write to the ADM1030
1 SCL 9
as before, but only the data byte containing the register address is sent, as data is not to be written to the register. This is shown in Figure 2b. A read operation is then performed consisting of the serial bus address, R/W bit set to 1, followed by the data byte read from the data register. This is shown in Figure 2c. 2. If the Address Pointer Register is known to be already at the desired address, data can be read from the corresponding data register without first writing to the Address Pointer Register, so Figure 2b can be omitted. NOTES 1. Although it is possible to read a data byte from a data register without first writing to the Address Pointer Register, if the Address Pointer Register is already at the correct value, it is not possible to write data to a register without writing to the Address Pointer Register, because the first data byte of a write is always written to the Address Pointer Register. 2. In Figures 2a to 2c, the serial bus address is shown as the default value 01011(A1)(A0), where A1 and A0 are set by the three-state ADD pin. 3. The ADM1030 also supports the Read Byte protocol, as described in the System Management Bus specification.
1 9
SDA START BY MASTER
0
1
0
1
1
A1
A0
R/W ACK. BY ADM1030
D7
D6
D5
D4
D3
D2
D1
D0 ACK. BY ADM1030
FRAME 1 SERIAL BUS ADDRESS BYTE 1 SCL (CONTINUED)
FRAME 2 ADDRESS POINTER REGISTER BYTE 9
SDA (CONTINUED)
D7
D6
D5
D4
D3
D2
D1
D0 ACK. BY ADM1030 STOP BY MASTER
FRAME 3 DATA BYTE
Figure 2a. Writing a Register Address to the Address Pointer Register, then Writing Data to the Selected Register
1 SCL 9 1 9
SDA START BY MASTER
0
1
0
1
1
A1
A0
R/W ACK. BY ADM1030
D7
D6
D5
D4
D3
D2
D1
D0 ACK. BY ADM1030 STOP BY MASTER
FRAME 1 SERIAL BUS ADDRESS BYTE
FRAME 2 ADDRESS POINTER REGISTER BYTE
Figure 2b. Writing to the Address Pointer Register Only
1 SCL 9 1 9
SDA START BY MASTER
0
1
0
1
1
A1
A0
R/W ACK. BY ADM1030
D7
D6
D5
D4
D3
D2
D1
D0 STOP BY NO ACK. BY MASTER MASTER
FRAME 1 SERIAL BUS ADDRESS BYTE
FRAME 2 DATA BYTE FROM ADM1030
Figure 2c. Reading Data from a Previously Selected Register
-8-
REV. 0
ADM1030
ALERT RESPONSE ADDRESS
Alert Response Address (ARA) is a feature of SMBus devices that allows an interrupting device to identify itself to the host when multiple devices exist on the same bus. The INT output can be used as an interrupt output or can be used as an SMBALERT. One or more INT outputs can be connected to a common SMBALERT line connected to the master. If a device's INT line goes low, the following procedure occurs: 1. SMBALERT pulled low. 2. Master initiates a read operation and sends the Alert Response Address (ARA = 0001 100). This is a general call address that must not be used as a specific device address. 3. The device whose INT output is low responds to the Alert Response Address, and the master reads its device address. The address of the device is now known and can be interrogated in the usual way. 4. If more than one device's INT output is low, the one with the lowest device address will have priority, in accordance with normal SMBus arbitration. 5. Once the ADM1030 has responded to the Alert Response Address, it will reset its INT output; however, if the error condition that caused the interrupt persists, INT will be reasserted on the next monitoring cycle.
TEMPERATURE MEASUREMENT SYSTEM Internal Temperature Measurement
Figure 3 shows the input signal conditioning used to measure the output of an external temperature sensor. This figure shows the external sensor as a substrate transistor, provided for temperature monitoring on some microprocessors, but it could equally well be a discrete transistor.
VDD I N I IBIAS
D+ REMOTE SENSING TRANSISTOR
VOUT+ TO ADC
D-
BIAS DIODE
VOUT- LOW-PASS FILTER fC = 65kHz
Figure 3. Signal Conditioning
If a discrete transistor is used, the collector will not be grounded, and should be linked to the base. If a PNP transistor is used, the base is connected to the D- input and the emitter to the D+ input. If an NPN transistor is used, the emitter is connected to the D- input and the base to the D+ input. One LSB of the ADC corresponds to 0.125C, so the ADM1030 can theoretically measure temperatures from -127C to +127.75C, although -127C is outside the operating range for the device. The extended temperature resolution data format is shown in Tables III and IV.
Table II. Temperature Data Format (Local Temperature and Remote Temperature High Bytes)
The ADM1030 contains an on-chip bandgap temperature sensor. The on-chip ADC performs conversions on the output of this sensor and outputs the temperature data in 10-bit two's complement format. The resolution of the local temperature sensor is 0.25C. The format of the temperature data is shown in Table II.
External Temperature Measurement
Temperature ( C) -128C -125C -100C -75C -50C -25C -1C 0C +1C +10C +25C +50C +75C +100C +125C +127C
Digital Output 1000 1000 1001 1011 1100 1110 1111 0000 0000 0000 0001 0011 0100 0110 0111 0111 0000 0011 1100 0101 1110 0111 1111 0000 0001 1010 1001 0010 1011 0100 1101 1111
The ADM1030 can measure the temperature of an external diode sensor or diode-connected transistor, connected to Pins 9 and 10. These pins are a dedicated temperature input channel. The function of Pin 7 is as a THERM input/output and is used to flag overtemperature conditions. The forward voltage of a diode or diode-connected transistor, operated at a constant current, exhibits a negative temperature coefficient of about -2 mV/C. Unfortunately, the absolute value of VBE, varies from device to device, and individual calibration is required to null this out, so the technique is unsuitable for mass production. The technique used in the ADM1030 is to measure the change in VBE when the device is operated at two different currents. This is given by: VBE = KT/q x ln (N) where: K is Boltzmann's constant. q is charge on the carrier. T is absolute temperature in Kelvins. N is ratio of the two currents.
REV. 0
-9-
ADM1030
Table III. Remote Sensor Extended Temperature Resolution
GND 10MIL 10MIL D+ 10MIL 10MIL D- 10MIL 10MIL GND 10MIL
Extended Resolution ( C) 0.000 0.125 0.250 0.375 0.500 0.625 0.750 0.875
Remote Temperature Low Bits 000 001 010 011 100 101 110 111
Figure 4. Arrangement of Signal Tracks
The extended temperature resolution for the local and remote channels is stored in the Extended Temperature Resolution Register (Register 0x06), and is outlined in Table XVIII.
Table IV. Local Sensor Extended Temperature Resolution
4. Try to minimize the number of copper/solder joints, which can cause thermocouple effects. Where copper/solder joints are used, make sure that they are in both the D+ and D- path and at the same temperature. Thermocouple effects should not be a major problem as 1C corresponds to about 200 V, and thermocouple voltages are about 3 V/C of temperature difference. Unless there are two thermocouples with a big temperature differential between them, thermocouple voltages should be much less than 200 V. 5. Place a 0.1 F bypass capacitor close to the ADM1030. 6. If the distance to the remote sensor is more than 8 inches, the use of twisted pair cable is recommended. This will work up to about 6 to 12 feet. 7. For really long distances (up to 100 feet) use shielded twisted pair such as Belden #8451 microphone cable. Connect the twisted pair to D+ and D- and the shield to GND close to the ADM1030. Leave the remote end of the shield unconnected to avoid ground loops. Because the measurement technique uses switched current sources, excessive cable and/or filter capacitance can affect the measurement. When using long cables, the filter capacitor C1 may be reduced or removed. In any case the total shunt capacitance should not exceed 1000 pF. Cable resistance can also introduce errors. 1 series resistance introduces about 0.5C error.
ADDRESSING THE DEVICE
Extended Resolution ( C) 0.00 0.25 0.50 0.75
Local Temperature Low Bits 00 01 10 11
To prevent ground noise interfering with the measurement, the more negative terminal of the sensor is not referenced to ground, but is biased above ground by an internal diode at the D- input. If the sensor is used in a very noisy environment, a capacitor of value up to 1000 pF may be placed between the D+ and D- inputs to filter the noise. To measure V, the sensor is switched between operating currents of I and N x I. The resulting waveform is passed through a 65 kHz low-pass filter to remove noise, then to a chopperstabilized amplifier that performs the functions of amplification and rectification of the waveform to produce a dc voltage proportional to VBE. This voltage is measured by the ADC to give a temperature output in 11-bit two's complement format. To further reduce the effects of noise, digital filtering is performed by averaging the results of 16 measurement cycles. An external temperature measurement nominally takes 9.6 ms.
LAYOUT CONSIDERATIONS
Digital boards can be electrically noisy environments and care must be taken to protect the analog inputs from noise, particularly when measuring the very small voltages from a remote diode sensor. The following precautions should be taken: 1. Place the ADM1030 as close as possible to the remote sensing diode. Provided that the worst noise sources such as clock generators, data/address buses, and CRTs are avoided, this distance can be 4 to 8 inches. 2. Route the D+ and D- tracks close together, in parallel, with grounded guard tracks on each side. Provide a ground plane under the tracks if possible. 3. Use wide tracks to minimize inductance and reduce noise pickup. 10 mil track minimum width and spacing is recommended.
ADD (Pin 13) is a three-state input. It is sampled, on power-up to set the lowest two bits of the serial bus address. Up to three addresses are available to the systems designer via this address pin. This reduces the likelihood of conflicts with other devices attached to the System Management Bus.
THE ADM1030 INTERRUPT SYSTEM
The ADM1030 has two interrupt outputs, INT and THERM. These have different functions. INT responds to violations of software programmed temperature limits and is maskable (described in more detail later). THERM is intended as a "fail-safe" interrupt output that cannot be masked. If the temperature is below the low temperature limit, the INT pin will be asserted low to indicate an out-of-limit condition. If the temperature exceeds the high temperature limit, the INT pin will also be asserted low. A third limit; THERM limit, may be programmed into the device to set the temperature limit above which the overtemperature THERM pin will be
-10-
REV. 0
ADM1030
asserted low. The behavior of the high limit and THERM limit is as follows: 1. Whenever the temperature measured exceeds the high temperature limit, the INT pin is asserted low. 2. If the temperature exceeds the THERM limit, the THERM output asserts low. This can be used to throttle the CPU clock. If the THERM-to-Fan Enable bit (Bit 7 of THERM behavior/revision register) is cleared to 0, the fan will not run full-speed. The THERM limit may be programmed at a lower temperature than the high temperature limit. This allows the system to run in silent mode, where the CPU can be throttled while the cooling fan is off. If the temperature continues to increase, and exceeds the high temperature limit, an INT is generated. Software may then decide whether the fan should run to cool the CPU. This allows the system to run in SILENT MODE. 3. If the THERM-to-Fan Enable bit is set to 1, the fan will run full-speed whenever THERM is asserted low. In this case, both throttling and active cooling take place. If the high temperature limit is programmed to a lower value than the THERM limit, exceeding the high temperature limit will assert INT low. Software could change the speed of the fan depending on temperature readings. If the temperature continues to increase and exceeds the THERM limit, THERM asserts low to throttle the CPU and the fan runs full-speed. This allows the system to run in PERFORMANCE MODE, where active cooling takes place and the CPU is only throttled at high temperature. Using the high temperature limit and the THERM limit in this way allows the user to gain maximum performance from the system by only slowing it down, should it be at a critical temperature. Although the ADM1030 does not have a dedicated Interrupt Mask Register, clearing the appropriate enable bits in Configuration Register 2 will clear the appropriate interrupts and mask out future interrupts on that channel. Disabling interrupt bits will prevent out-of-limit conditions from generating an interrupt or setting a bit in the Status Registers.
USING THERM AS AN INPUT
fan is no longer at Alarm Speed. Bit 1 (Fan Fault) is set whenever a fan tach failure is detected. Once cleared, it will reassert on subsequent fan tach failures. Bits 2 and 3 of Status Register 1 are the Remote Temperature High and Low status bits. Exceeding the high or low temperature limits for the external channel sets these status bits. Reading the status register clears these bits. However, these bits will be reasserted if the out-of limit condition still exists on the next monitoring cycle. Bits 6 and 7 are the Local Temperature High and Low status bits. These behave exactly the same as the Remote Temperature High and Low status bits. Bit 4 of Status Register 1 indicates that the Remote Temperature THERM limit has been exceeded. This bit gets cleared on a read of Status Register 1 (see Figure 5). Bit 5 indicates a Remote Diode Error. This bit will be a 1 if a short or open is detected on the Remote Temperature channel on power-up. If this bit is set to 1 on power-up, it cannot be cleared. Bit 6 of Status Register 2 (0x03) indicates that the Local THERM limit has been exceeded. This bit is cleared on a read of Status Register 2. Bit 7 indicates that THERM has been pulled low as an input. This bit can also be cleared on a read of Status Register 2.
THERM LIMIT
5 TEMP
THERM INT REARMED INT STATUS REG. READ
Figure 5. Operation of THERM and INT Signals
The THERM pin is an open-drain input/output pin. When used as an output, it signals over-temperature conditions. When asserted low as an output, the fan will be driven full-speed if the THERM-to-Fan Enable bit is set to 1 (Bit 7 of Register 0x3F). When THERM is pulled low as an input, the THERM bit (Bit 7) of Status Register 2 is set to 1, and the fan is driven full-speed. Note that the THERM-to-Fan Enable bit has no effect whenever THERM is used as an input. If THERM is pulled low as an input, and the THERM-to-Fan Enable bit = 0, the fan will still be driven full-speed. The THERM-to-Fan Enable bit only affects the behavior of THERM when used as an output.
STATUS REGISTERS
Figure 5 shows the interaction between INT and THERM. Once a critical temperature THERM limit is exceeded, both INT and THERM assert low. Reading the Status Registers clears the interrupt and the INT pin goes high. However, the THERM pin remains asserted until the measured temperature falls 5C below the exceeded THERM limit. This feature can be used to CPU throttle or drive a fan full-speed for maximum cooling. Note, that the INT pin for that interrupt source is not rearmed until the temperature has fallen below the THERM limit -5C. This prevents unnecessary interrupts from tying up valuable CPU resources.
MODES OF OPERATION
The ADM1030 has four different modes of operation. These modes determine the behavior of the system. 1. Automatic Fan Speed Control Mode. 2. Filtered Automatic Fan Speed Control Mode. 3. PWM Duty Cycle Select Mode (directly sets fan speed under software control). 4. RPM Feedback Mode.
All out-of-limit conditions are flagged by status bits in Status Registers 1 and 2 (0x02, 0x03). Bits 0 and 1 (Alarm Speed, Fan Fault) of Status Register 1, once set, may be cleared by reading Status Register 1. Once the Alarm Speed bit is cleared, this bit will not be reasserted on the next monitoring cycle even if the condition still persists. This bit may be reasserted only if the
REV. 0
-11-
ADM1030
AUTOMATIC FAN SPEED CONTROL
ANGE = 1 0C
PWM DUTY CYCLE - %
RA NG E =2 0
The ADM1030 has a local temperature channel and a remote temperature channel, which may be connected to an on-chip diode-connected transistor on a CPU. These two temperature channels may be used as the basis for an automatic fan speed control loop to drive a fan using Pulsewidth Modulation (PWM).
HOW DOES THE CONTROL LOOP WORK?
93 87 80 73 66 60 53
TRANG = 5 C E
100
C
TR
The Automatic Fan Speed Control Loop is shown in Figure 6 below.
SPIN UP FOR 2 SECONDS MAX
T
T
RA NG E
=
40
E NG T RA
C
=8
0
C
47 40 33 0 TMIN 5 10 20 40 TEMPERATURE - C 60 80 TMAX = T MIN + TRANGE
FAN SPEED
Figure 7. PWM Duty Cycle vs. Temperature Slopes (TRANGE)
MIN
TMIN TEMPERATURE
TMAX = T MIN + T RANGE
Figure 8 shows how, for a given TRANGE, changing the TMIN value affects the loop. Increasing the TMIN value will increase the TMAX (temperature at which the fan runs full speed) value, since TMAX = TMIN + TRANGE. Note, however, that the PWM Duty Cycle vs Temperature slope remains exactly the same. Changing the TMIN value merely shifts the control slope. The TMIN may be changed in increments of 4C.
100 93
PWM DUTY CYCLE - %
Figure 6. Automatic Fan Speed Control
In order for the fan speed control loop to work, certain loop parameters need to be programmed into the device. 1. TMIN. The temperature at which the fan should switch on and run at minimum speed. The fan will only turn on once the temperature being measured rises above the TMIN value programmed. The fan will spin up for a predetermined time (default = 2 secs). See Fan Spin-Up section for more details. 2. TRANGE. The temperature range over which the ADM1030 will automatically adjust the fan speed. As the temperature increases beyond TMIN, the PWM_OUT duty cycle will be increased accordingly. The TRANGE parameter actually defines the fan speed versus temperature slope of the control loop. 3. TMAX. The temperature at which the fan will be at its maximum speed. At this temperature, the PWM duty cycle driving the fan will be 100%. TMAX is given by TMIN + TRANGE. Since this parameter is the sum of the TMIN and TRANGE parameters, it does not need to be programmed into a register on-chip. 4. A hysteresis value of 5C is included in the control loop to prevent the fan continuously switching on and off if the temperature is close to TMIN. The fan will continue to run until such time as the temperature drops 5C below TMIN. Figure 7 shows the different control slopes determined by the TRANGE value chosen, and programmed into the ADM1030. TMIN was set to 0C to start all slopes from the same point. It can be seen how changing the TRANGE value affects the PWM duty cycle versus temperature slope.
87 80
C
C
40
40
=
=
RA NG E
RA NG E
60 53 47 40 33 0 TMIN
T
T
20
40 TEMPERATURE - C
60 80 TMAX = T MIN + T RANGE
Figure 8. Effect of Increasing TMIN Value on Control Loop
FAN SPIN-UP
As was previously mentioned, once the temperature being measured exceeds the TMIN value programmed, the fan will turn on at minimum speed (default = 33% duty cycle). However, the problem with fans being driven by PWM is that 33% duty cycle is not enough to reliably start the fan spinning. The solution is to spin the fan up for a predetermined time, and once the fan has spun up, its running speed may be reduced in line with the temperature being measured. The ADM1030 allows fan spin-up times between 200 ms and 8 seconds. Bits <2:0> of Fan Characteristics Register 1 (Register 0x20) program the fan spin-up time.
-12-
T
RA NG E
66
=
40
73
C
REV. 0
ADM1030
Table V. Fan Spin-Up Times
Bits 2:0 000 001 010 011 100 101 110 111
Spin-Up Time (Fan Characteristics Register 1) 200 ms 400 ms 600 ms 800 ms 1 sec 2 secs (Default) 4 secs 8 secs
one channel, may actually calculate a faster speed, than a higher temperature on the other channel.
100 93 PWM DUTY CYCLE - %
80 73 66 60 53 47 40 33 0 20 TMIN 40
Once the Automatic Fan Speed Control Loop parameters have been chosen, the ADM1030 device may be programmed. The ADM1030 is placed into Automatic Fan Speed Control Mode by setting Bit 7 of Configuration Register 1 (Register 0x00). The device powers up into Automatic Fan Speed Control Mode by default. The control mode offers further flexibility in that the user can decide which temperature channel/channels control the fan.
Table VI. Auto Mode Fan Behavior
100 93
PWM DUTY CYCLE - %
T
RA NG E
=4
0
60 TMAX = T MIN + T RANGE LOCAL TEMPERATURE - C
a.
Bits 6, 5 00 11
Control Operation (Config Register 1) Remote Temperature Controls the Fan. Maximum Speed Calculated by Local and Remote Temperature Channels Control the Fan.
87 80 73 66 60 53 47 40 33 0 TMIN REMOTE TEMPERATURE - C 20 40 70 80 TMAX = T MIN + T RANGE
E NG T RA
C
= 80 C
87
When Bits 5 and 6 of Config Register 1 are both set to 1, it offers increased flexibility. The local and remote temperature channels can have independently programmed control loops with different control parameters. Whichever control loop calculates the fastest fan speed based on the temperature being measured, drives the fan. Figure 9 shows how the fan's PWM duty cycle is determined by two independent control loops. This is the type of Auto Mode Fan Behavior seen when Bits 5 and 6 of Config Register 1 are set to 11. Figure 9a shows the control loop for the Local Temperature channel. Its TMIN value has been programmed to 20C, and its TRANGE value is 40C. The local temperature's TMAX will thus be 60C. Figure 9b shows the control loop for the Remote Temperature channel. Its TMIN value has been set to 0C, while its TRANGE = 80C. Therefore, the Remote Temperature's TMAX value will be 80C. Consider if both temperature channels measure 40C. Both control loops will calculate a PWM duty cycle of 66%. Therefore, the fan will be driven at 66% duty cycle. If both temperature channels measure 20C, the local channel will calculate 33% PWM duty cycle, while the remote channel will calculate 50% PWM duty cycle. Thus, the fan will be driven at 50% PWM duty cycle. Consider the local temperature measuring 60C while the remote temperature is measuring 70C. The PWM duty cycle calculated by the local temperature control loop will be 100% (since the temperature = TMAX). The PWM duty cycle calculated by the remote temperature control loop at 70C will be approximately 90%. So the fan will run full-speed (100% duty cycle). Remember, that the fan speed will be based on the fastest speed calculated, and is not necessarily based on the highest temperature measured. Depending on the control loop parameters programmed, a lower temperature on REV. 0
b. Figure 9. Max Speed Calculated by Local and Remote Temperature Control Loops Drives Fan
PROGRAMMING THE AUTOMATIC FAN SPEED CONTROL LOOP
1. Program a value for TMIN. 2. Program a value for the slope TRANGE. 3. TMAX = TMIN + TRANGE. 4. Program a value for Fan Spin-up Time. 5. Program the desired Automatic Fan Speed Control Mode Behavior, i.e., which temperature channel controls the fan. 6. Select Automatic Fan Speed Control Mode by setting Bit 7 of Configuration Register 1.
OTHER CONTROL LOOP PARAMETERS
Having programmed all the above loop parameters, are there any other parameters to worry about? TMIN was defined as being the temperature at which the fan switched on and ran at minimum speed. This minimum speed is 33% duty cycle by default. If the minimum PWM duty cycle is programmed to 33%, the fan control loops will operate as previously described. -13-
ADM1030
It should be noted however, that changing the minimum PWM duty cycle affects the control loop behavior. Slope 1 of Figure 10 shows TMIN set to 0C and the TRANGE chosen is 40C. In this case, the fan's PWM duty cycle will vary over the range 33% to 100%. The fan will run full-speed at 40C. If the minimum PWM duty cycle at which the fan runs at TMIN is changed, its effect can be seen on Slopes 2 and 3. Take Case 2, where the minimum PWM duty cycle is reprogrammed from 33% (default) to 53%. The temperature at which the fan will run full-speed (100% duty cycle) is given by: TMAX = TMIN + ((Max DC - Min DC) x TRANGE/10) where, TMAX TMIN = Temperature at which fan runs full-speed. = Temperature at which fan will turn on.
Max DC = Maximum Duty Cycle (100%) = 15 decimal. Min DC = Duty Cycle at TMIN, programmed into Fan Speed Config Register (default = 33% = 5 decimal).
100 93
TRANGE TMIN
= PWM Duty Cycle versus Temperature Slope. = 0C, TRANGE = 40C
Example 1
40 C
PWM DUTY CYCLE - %
87
73 66 60 53 47 40 33 0 TMIN 16
RA NG E
=
80
Min DC = 53% = 8 decimal (Table VII) Calculate TMAX. TMAX TMAX TMAX T MAX = TMIN + ((Max DC - Min DC) x TRANGE/10) = 0 + ((100% DC - 53% DC) x 40/10) = 0 + ((15 - 8) x 4) = 28 = 28 C (As seen on Slope 2 of Figure 10) = 0C, TRANGE = 40C
T
Example 2
28 40 60
TMIN
TEMPERATURE - C
Min DC = 73% = 11 Decimal (Table VII) Calculate TMAX. TMAX TMAX TMAX TMAX TMIN = TMIN + ((Max DC - Min DC) x TRANGE/10) = 0 + ((100% DC - 73% DC) x 40/10) = 0 + ((15 - 11) x 4) = 16 = 16 C (As seen on Slope 3 of Figure 10) = 0C, TRANGE = 40C
Figure 10. Effect of Changing Minimum Duty Cycle on Control Loop with Fixed TMIN and TRANGE Values
The fan will actually reach full-speed at a much lower temperature, 28C. Case 3 shows that when the minimum PWM duty cycle was increased to 73%, the temperature at which the fan ran full-speed was 16C. So the effect of increasing the minimum PWM duty cycle, with a fixed TMIN and fixed TRANGE, is that the fan will actually reach full-speed (TMAX) at a lower temperature than TMIN + TRANGE. How can TMAX be calculated? In Automatic Fan Speed Control Mode, the register that holds the minimum PWM duty cycle at TMIN, is the Fan Speed Config Register (Register 0x22). Table VII shows the relationship between the decimal values written to the Fan Speed Config Register and PWM duty cycle obtained.
Table VII. Programming PWM Duty Cycle
Example 3
Min DC = 33% = 5 Decimal (Table VII) Calculate TMAX. TMAX TMAX TMAX TMAX = TMIN + ((Max DC - Min DC) x TRANGE/10) = 0 + ((100% DC - 33% DC) x 40/10) = 0 + ((15 - 5) x 4) = 40 = 40 C (As seen on Slope 1 of Figure 10)
Decimal Value 00 01 02 03 04 05 06 07 08 09 10 (0x0A) 11 (0x0B) 12 (0x0C) 13 (0x0D) 14 (0x0E) 15 (0x0F)
PWM Duty Cycle 0% 7% 14% 20% 27% 33% (Default) 40% 47% 53% 60% 67% 73% 80% 87% 93% 100%
In this case, since the Minimum Duty Cycle is the default 33%, the equation for TMAX reduces to: TMAX TMAX TMAX TMAX = TMIN + ((Max DC - Min DC) x TRANGE/10) = TMIN + ((15 - 5) x TRANGE/10) = TMIN + (10 x TRANGE/10) = TMIN + TRANGE
-14-
REV. 0
ADM1030
RELEVANT REGISTERS FOR AUTOMATIC FAN SPEED CONTROL MODE Register 0x00 Configuration Register 1 Register 0x24 Local Temp T MIN/TRANGE
<7>
Logic 1 selects Automatic Fan Speed Control, Logic 0 selects software control (Default = 1).
<6:5> 00 = Remote Temperature controls Fan 11 = Fastest Calculated Speed controls the fan when Bit 7 = Logic 1.
Register 0x20 Fan Characteristics Register 1
<2:0> Fan 1 Spin-Up Time 000 = 200 ms 001 = 400 ms 010 = 600 ms 011 = 800 ms 100 = 1 sec 101 = 2 secs (Default) 110 = 4 secs 111 = 8 secs <5:3> PWM Frequency Driving the Fan 000 = 11.7 Hz 001 = 15.6 Hz 010 = 23.4 Hz 011 = 31.25 Hz (Default) 100 = 37.5 Hz 101 = 46.9 Hz 110 = 62.5 Hz 111 = 93.5 Hz <7:6> Speed Range N; defines the lowest fan speed that can be measured by the device. 00 = 1: Lowest Speed = 2647 RPM 01 = 2: Lowest Speed = 1324 RPM 10 = 4: Lowest Speed = 662 RPM 11 = 8: Lowest Speed = 331 RPM
Register 0x22 Fan Speed Configuration Register
<7:3> Local Temp TMIN. These bits set the temperature at which the fan will turn on when under Auto Fan Speed Control. TMIN can be programmed in 4C increments. 00000 = 0C 00001 = 4C 00010 = 8C 00011 = 12C | | 01000 = 32C (Default) | | 11110 = 120C 11111 = 124C <2:0> Local Temperature TRANGE. This nibble sets the temperature range over which Automatic Fan Speed Control takes place. 000 = 5C 001 = 10C 010 = 20C 011 = 40C 100 = 80C
Register 0x25 Remote Temperature T MIN/TRANGE
<3:0> Min Speed: This nibble contains the speed at which the fan will run when the temperature is at TMIN. The default is 0x05, meaning that the fan will run at 33% duty cycle when the temperature is at TMIN.
<7:3> Remote Temperature TMIN. Sets the temperature at which the fan will switch on based on Remote Temperature Readings. 00000 = 0C 00001 = 4C 00010 = 8C 00011 = 12C | | 01100 = 48C | | 11110 = 120C 11111 = 124C <2:0> Remote Temperature TRANGE. This nibble sets the temperature range over which the fan will be controlled based on Remote Temperature readings. 000 = 5C 001 = 10C 010 = 20C 011 = 40C 100 = 80C
REV. 0
-15-
ADM1030
FILTERED CONTROL MODE
The Automatic Fan Speed Control Loop reacts instantaneously to changes in temperature, i.e., the PWM duty cycle will respond immediately to temperature change. In certain circumstances, we may not want the PWM output to react instantaneously to temperature changes. If significant variations in temperature were found in a system, it would have the effect of changing the fan speed, which could be obvious to someone in close proximity. One way to improve the system's acoustics would be to slow down the loop so that the fan ramps slowly to its newly calculated fan speed. This also ensures that temperature transients will effectively be ignored, and the fan's operation will be smooth. There are two means by which to apply filtering to the Automatic Fan Speed Control Loop. The first method is to ramp the fan speed at a predetermined rate, to its newly calculated value instead of jumping directly to the new fan speed. The second approach involves changing the on-chip ADC sample rate, to change the number of temperature readings taken per second. The filtered mode on the ADM1030 is invoked by setting Bit 0 of the Fan Filter Register (Register 0x23). Once the Fan Filter Register has been written to, and all other control loop parameters (TMIN, TRANGE, etc.) have been programmed, the device may be placed into Automatic Fan Speed Control Mode by setting Bit 7 of Configuration Register 1 (Register 0x00) to 1.
Effect of Ramp Rate on Filtered Mode
READ TEMPERATURE
CALCULATE NEW PWM DUTY CYCLE
IS NEW PWM VALUE > PREVIOUS VALUE? YES
NO
DECREMENT PREVIOUS PWM VALUE BY RAMP RATE
INCREMENT PREVIOUS PWM VALUE BY RAMP RATE
Figure 12. Filtered Mode Algorithm
Bits <6:5> of the Fan Filter Register determine the ramp rate in Filtered Mode. The PWM_OUT signal driving the fan will have a period, T, given by the PWM_OUT drive frequency, f, since T = 1/f. For a given PWM period, T, the PWM period is subdivided into 240 equal time slots. One time slot corresponds to the smallest possible increment in PWM duty cycle. A PWM signal of 33% duty cycle will thus be high for 1/3 x 240 time slots and low for 2/3 x 240 time slots. Therefore, 33% PWM duty cycle corresponds to a signal which is high for 80 time slots and low for 160 time slots.
The Filtered Mode algorithm calculates a new PWM duty cycle based on the temperature measured. If the new PWM duty cycle value is greater than the previous PWM value, the previous PWM duty cycle value is incremented by either 1, 2, 4, or 8 time slots (depending on the setting of bits <6:5> of the Fan Filter Register). If the new PWM duty cycle value is less than the previous PWM value, the previous PWM duty cycle is decremented by 1, 2, 4, or 8 time slots. Each time the PWM duty cycle is incremented or decremented, it is stored as the previous PWM duty cycle for the next comparison. So what does an increase of 1, 2, 4, or 8 time slots actually mean in terms of PWM duty cycle? A Ramp Rate of 1 corresponds to one time slot, which is 1/240 of the PWM period. In Filtered Auto Fan Speed Control Mode, incrementing or decrementing by 1 changes the PWM output duty cycle by 0.416%.
Table VIII. Effect of Ramp Rates on PWM_OUT
PWM_OUT 33% DUTY CYCLE 80 TIME SLOTS 160 TIME SLOTS PWM OUTPUT (ONE PERIOD) = 240 TIME SLOTS
Ramp Rate 1 2 4 8
PWM Duty Cycle Change 0.416% 0.833% 1.66% 3.33%
Figure 11. 33% PWM Duty Cycle Represented in Time Slots
The ramp rates in Filtered Mode are selectable between 1, 2, 4, and 8. The ramp rates are actually discrete time slots. For example, if the ramp rate = 8, then eight time slots will be added to the PWM_OUT high duty cycle each time the PWM_OUT duty cycle needs to be increased. Figure 12 shows how the Filtered Mode algorithm operates.
So programming a ramp rate of 1, 2, 4, or 8 simply increases or decreases the PWM duty cycle by the amounts shown in Table V, depending on whether the temperature is increasing or decreasing. Figure 13 shows remote temperature plotted against PWM duty cycle for Filtered Mode. The ADC sample rate is the highest sample rate; 11.25 kHz. The ramp rate is set to 8 which would correspond to the fastest ramp rate. With these settings it took approximately 12 seconds to go from 0% duty cycle to 100% duty cycle (full-speed). The TMIN value = 32C and the TRANGE = 80C. It can be seen that even though the temperature increased very rapidly, the fan gradually ramps up to full speed.
-16-
REV. 0
ADM1030
140 120 120 100 RTEMP - C RTEMP 80 80 60 60 PWM DUTY CYCLE 40 40 20 20 100 PWM DUTY CYCLE - %
Finally, Figure 16 shows how the control loop reacts to temperature with the slowest ramp rate. The ramp rate is set to 1, while all other control parameters remain the same. With the slowest ramp rate selected it took 112 seconds for the fan to reach full speed.
120 140 120 100
PWM DUTY CYCLE - %
110 RTEMP 80
RTEMP - C
80 60 60 PWM DUTY CYCLE 40 40 20 20
0 0 TIME - s 12
0
Figure 13. Filtered Mode with Ramp Rate = 8
Figure 14 shows how changing the ramp rate from 8 to 4 affects the control loop. The overall response of the fan is slower. Since the ramp rate is reduced, it takes longer for the fan to achieve full running speed. In this case, it took approximately 22 seconds for the fan to reach full speed.
120 140 120 RTEMP 80
RTEMP - C
0 0 TIME - s 112
0
Figure 16. Filtered Mode with Ramp Rate = 1
110
PWM DUTY CYCLE - %
100
As can be seen from Figures 13 through 16, the rate at which the fan will react to temperature change is dependent on the ramp rate selected in the Fan Filter Register. The higher the ramp rate, the faster the fan will reach the newly calculated fan speed. Figure 17 shows the behavior of the PWM output as temperature varies. As the temperature is rising, the fan speed will ramp up. Small drops in temperature will not affect the ramp-up function since the newly calculated fan speed will still be higher than the previous PWM value. The Filtered Mode allows the PWM output to be made less sensitive to temperature variations. This will be dependent on the ramp rate selected and the ADC sample rate programmed into the Fan Filter Register.
90 80 70 60 90 80 70 60 50 RTEMP 40 30 40 30 20 10 0 TIME - s
80 60 PWM DUTY CYCLE 40 40 20 20 60
0 0 TIME - s 22
0
Figure 14. Filtered Mode with Ramp Rate = 4
PWM DUTY CYCLE
50
140
120
120 100
RTEMP - C
100
PWM DUTY CYCLE - %
RTEMP 80
20 10 0
80 60 60 PWM DUTY CYCLE 40 40 20 20
Figure 17. How Fan Reacts to Temperature Variation in Filtered Mode
0 0 TIME - s 54
0
Figure 15. Filtered Mode with Ramp Rate = 2
REV. 0
-17-
PWM DUTY CYCLE - %
RTEMP - C
Figure 15 shows the PWM output response for a ramp rate of 2. In this instance the fan took about 54 seconds to reach full running speed.
ADM1030
Effect of ADC Sample Rate on Filtered Mode
The second means by which to change the Filtered Mode characteristics is to adjust the ADC sample rate. The faster the ADC sample rate, the more temperature samples are obtained per second. One way to apply filtering to the control loop is to slow down the ADC sampling rate. This means that the number of iterations of the Filtered Mode algorithm per second are effectively reduced. If the number of temperature measurements per second are reduced, how often the PWM_OUT signal controlling the fan is updated is also reduced. Bits <4:2> of the Fan Filter Register (Reg 0x23) set the ADC sample rate. The default ADC sample rate is 1.4 kHz. The ADC sample rate is selectable from 87.5 Hz to 11.2 kHz. Table IX shows how many temperature samples are obtained per second, for each of the ADC sample rates.
Table IX. Temperature Updates per Second
PROGRAMMING THE FILTERED AUTOMATIC FAN SPEED CONTROL LOOP
1. Program a value for TMIN. 2. Program a value for the slope TRANGE. 3. TMAX = TMIN + TRANGE. 4. Program a value for Fan Spin-up Time. 5. Program the desired Automatic Fan Speed Control Mode Behavior, i.e., which temperature channel controls the fan. 6. Program a ramp rate for the filtered mode. 7. Program the ADC sample rate in the Fan Filter Register. 8. Set Bit 0 to enable fan filtered mode for the fan. 9. Select Automatic Fan Speed Control Mode by setting Bit 7 of Configuration Register 1.
PWM DUTY CYCLE SELECT MODE
ADC Sample Rate 87.5 Hz 175 Hz 350 Hz 700 Hz 1.4 kHz 2.8 kHz 5.6 kHz 11.2 kHz
Temperature Updates/Sec 0.0625 0.125 0.25 0.5 1 (Default) 2 4 8
The ADM1030 may be operated under software control by clearing Bit 7 of Configuration Register 1 (Register 0x00). This allows the user to directly control PWM Duty Cycle. Clearing Bit 5 of Configuration Register 1 allows fan control by varying PWM duty cycle. Values of duty cycle between 0% to 100% may be written to the Fan Speed Config Register (0x22) to control the speed of the fan. Table X shows the relationship between hex values written to the Fan Speed Configuration Register and PWM duty cycle obtained.
Table X. PWM Duty Cycle Select Mode
RELEVANT REGISTERS FOR FILTERED AUTOMATIC FAN SPEED CONTROL MODE
Hex Value 00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F
PWM Duty Cycle 0% 7% 14% 20% 27% 33% 40% 47% 53% 60% 67% 73% 80% 87% 93% 100%
In addition to the registers used to program the normal Automatic Fan Speed Control Mode, the following register needs to be programmed.
Register 0x23 Fan Filter Register
<7>
Spin-up Disable :- when this bit is set to 1, fan spin-up is disabled. (Default = 0)
<6:5> Ramp Rate: these bits set the ramp rate for filtered mode. 00 = 1 (0.416% Duty Cycle Change) 01 = 2 (0.833% Duty Cycle Change) 10 = 4 (1.66% Duty Cycle Change) 11 = 8 (3.33% Duty Cycle Change) <4:2> ADC Sample Rate 000 = 87.5 Hz 001 = 175 Hz 010 = 350 Hz 011 = 700 Hz 100 = 1.4 kHz (Default) 101 = 2.8 kHz 110 = 5.6 kHz 111 = 11.2 kHz <1> <0> Unused. Default = 0 Fan 1 Filter Enable: when this bit is set to 1, it enables filtering on Fan 1. Default = 0.
-18-
REV. 0
ADM1030
RPM FEEDBACK MODE Example 1:
The second method of fan speed control under software is RPM Feedback Mode. This involves programming the desired fan RPM value to the device to set fan speed. The advantages include a very tightly maintained fan RPM over the fan's life, and virtually no acoustic pollution due to fan speed variation. Fans typically have manufacturing tolerances of 20%, meaning a wide variation in speed for a typical batch of identical fan models. If it is required that all fans run at exactly 5000 RPM, it may be necessary to specify fans with a nominal fan speed of 6250 RPM. However, many of these fans will run too fast and make excess noise. A fan with nominal speed of 6250 RPM could run as fast as 7000 RPM at 100% PWM duty cycle. RPM Mode will allow all of these fans to be programmed to run at the desired RPM value. Clearing Bit 7 of Configuration Register 1 (Reg 0x00) to 0 places the ADM1030 under software control. Once under software control, the device may be placed in to RPM Feedback Mode by writing to Bit 5 of Configuration Register 1. Writing a 1 to Bit 5 selects RPM Feedback Mode for the fan. Once RPM Feedback Mode has been selected, the required fan RPM may be written to the Fan Tach High Limit Register (0x10). The RPM Feedback Mode function allows a fan RPM value to be programmed into the device, and the ADM1030 will maintain the selected RPM value by monitoring the fan tach and speeding up the fan as necessary, should the fan start to slow down. Conversely, should the fan start to speed up due to aging, the RPM feedback will slow the fan down to maintain the correct RPM speed. The value to be programmed into each Fan Tach High Limit Register is given by: Count = (f x 60)/R x N where: f = 11.25 kHz R = desired RPM value N = Speed Range; MUST be set to 2 The speed range, N, really determines what the slowest fan speed measured can be before generating an interrupt. The slowest fan speed will be measured when the count value reaches 255. Since speed range, N, = 2, Count = (f x 60)/R x N R = (f x 60)/Count x N R = (11250 x 60)/255 x 2 R = (675000)/510 R = 1324 RPM, fan fail detect speed.
Programming RPM Values in RPM Feedback Mode
If the desired value for RPM Feedback Mode is 5000 RPM, what value needs to be programmed for Count? Count = (f x 60)/R x N Since the desired RPM value, R, is 5000 RPM, the value for Count is: N = 2: Count = (11250 x 60)/5000 x 2 Count = 675000/10000 Count = 67 (assumes 2 tach pulses/rev).
Example 2:
If the desired value for RPM Feedback Mode is 3650 RPM, what value needs to be programmed for Count? Count = (f x 60)/R x N Since the desired RPM value, R, is 3650 RPM, the value for Count is: N = 2: Count = (11250 x 60)/3650 x 2 Count = 675000/7300 Count = 92 (assumes 2 tach pulses/rev). Once the count value has been calculated, it should be written to the Fan Tach High Limit Register. It should be noted that in RPM Feedback Mode, there is no high limit register for underspeed detection that can be programmed as there are in the other fan speed control modes. The only time each fan will indicate a fan failure condition is whenever the count reaches 255. Since the speed range N = 2, the fan will fail if its speed drops below 1324 RPM.
Programming RPM Values
1. Choose the RPM value to be programmed. 2. Set speed range value, N = 2. 3. Calculate count value based on RPM and speed range values chosen. Use Count Equation to calculate Count Value. 4. Clear Bit 7 of Configuration Register 1 (Reg. 0x00) to place the ADM1030 under software control. 5. Write a 1 to Bit 5 of Configuration Register 1 to place the device in RPM Feedback Mode. 6. Write the calculated Count value to the Fan Tach High Limit Register (Reg. 0x10). The fan speed will now go to the desired RPM value and maintain that fan speed.
RPM Feedback Mode Limitations
Rather than writing a value such as 5000 to a 16-bit register, an 8-bit count value is programmed instead. The count to be programmed is given by: Count = (f x 60)/R x N where: f = 11.25 kHz R = desired RPM value N = Speed Range = 2
RPM feedback mode only controls Fan RPM over a limited fan speed range of about 75% to 100%. However, this should be enough range to overcome fan manufacturing tolerance. In practice, however, the program must not function at too low an RPM value for the fan to run at, or the RPM Mode will not operate. To find the lowest RPM value allowed for a given fan, do the following:
REV. 0
-19-
ADM1030
1. Run the fan at 53% PWM duty cycle in Software Mode. Clear Bits 5 and 7 of Configuration Register 1 (Reg 0x00) to enter PWM duty cycle mode. Write 0x08 to the Fan Speed Config Register (Reg 0x22) to set the PWM output to 53% duty cycle. 2. Measure the fan RPM. This represents the fan RPM below which the RPM mode will fail to operate. Do NOT program a lower RPM than this value when using RPM Feedback mode. 3. Ensure that Speed Range, N, = 2 when using RPM Feedback mode. Fans come in a variety of different options. One distinguishing feature of fans is the number of poles that a fan has internally. The most common fans available have four, six, or eight poles. The number of poles the fan has generally affects the number of pulses per revolution the fan outputs. If the ADM1030 is used to drive fans other than 4-pole fans that output 2 tach pulses/revolution, then the fan speed measurement equation needs to be adjusted to calculate and display the correct fan speed, and also to program the correct count value in RPM Feedback Mode.
FAN SPEED MEASUREMENT EQUATIONS
3.3V 10k TYPICAL TACH/AIN 3.3V 10k TYPICAL PWM_OUT +V TACH
5V OR 12V FAN
ADM1030
Q1 NDT3055L
Figure 18. Interfacing the ADM1030 to a 3-Wire Fan
The NDT3055L n-type MOSFET was chosen since it has 3.3 V gate drive, low on-resistance, and can handle 3.5 A of current. Other MOSFETs may be substituted based on the system's fan drive requirements.
+V
3.3V
5V OR 12V FAN
For a 4-pole fan (2 tach pulses/rev): Fan RPM = (f x 60)/Count x N For a 6-pole fan (3 tach pulses/rev): Fan RPM = (f x 60)/(Count x N x 1.5) For an 8-pole fan (4 tach pulses/rev): Fan RPM = (f x 60)/(Count x N x 2) If in doubt as to the number of poles the fans used have, or the number of tach output pulses/rev, consult the fan manufacturer's data sheet, or contact the fan vendor for more information.
FAN DRIVE USING PWM CONTROL
TACH/AIN PWM_OUT
10k TYPICAL
TACH
Q1 NDT3055L
ADM1030
0.01 F RSENSE (2 TYPICAL)
Figure 19. Interfacing the ADM1030 to a 2-Wire Fan
The external circuitry required to drive a fan using PWM control is extremely simple. A single NMOS FET is the only drive transistor required. The specifications of the MOSFET depend on the maximum current required by the fan being driven. Typical notebook fans draw a nominal 170 mA, and so SOT devices can be used where board space is a constraint. If driving several fans in parallel from a single PWM output, or driving larger server fans, the MOSFET will need to handle the higher current requirements. The only other stipulation is that the MOSFET should have a gate voltage drive, VGS < 3.3 V, for direct interfacing to the PWM_OUT pin. The MOSFET should also have a low on-resistance to ensure that there is not significant voltage drop across the FET. This would reduce the maximum operating speed of the fan. Figure 18 shows how a 3-wire fan may be driven using PWM control.
Figure 19 shows how a 2-wire fan may be connected to the ADM1030. This circuit allows the speed of the 2-wire fan to be measured even though the fan has no dedicated Tach signal. A series RSENSE resistor in the fan circuit converts the fan commutation pulses into a voltage. This is ac-coupled into the ADM1030 through the 0.01 F capacitor. On-chip signal conditioning allows accurate monitoring of fan speed. For typical notebook fans drawing approximately 170 mA, a 2 RSENSE value is suitable. For fans such as desktop or server fans, that draw more current, RSENSE may be reduced. The smaller RSENSE is the better, since more voltage will be developed across the fan, and the fan will spin faster. Figure 20 shows a typical plot of the sensing waveform at the TACH/AIN pin. The most important thing is that the negative-going spikes are more than 250 mV in amplitude. This will be the case for most fans when RSENSE = 2 . The value of RSENSE can be reduced as long as the voltage spikes at the TACH/AIN pin are greater than 250 mV. This allows fan speed to be reliably determined.
-20-
REV. 0
ADM1030
Tek PreVu T T : 250mV @: -258mV
CLOCK
CONFIG 2 REG. BIT 2
1
FAN INPUT START OF MONITORING CYCLE FAN MEASUREMENT PERIOD
Figure 21. Fan Speed Measurement
4 CH1 100mV CH3 50.0mV CH2 5.00mV CH4 50.0mV M 4.00ms A CH1 -2.00mV
Figure 20. Fan Speed Sensing Waveform at TACH/AIN Pin
FAN SPEED MEASUREMENT
The fan counter does not count the fan tach output pulses directly, because the fan speed may be less than 1000 RPM and it would take several seconds to accumulate a reasonably large and accurate count. Instead, the period of the fan revolution is measured by gating an on-chip 11.25 kHz oscillator into the input of an 8-bit counter. The fan speed measuring circuit is initialized on the rising edge of a PWM high output if fan speed measurement is enabled (Bit 2 of Configuration Register 2 = 1). It then starts counting on the rising edge of the second tach pulse and counts for two fan tach periods, until the rising edge of the fourth tach pulse, or until the counter overranges if the fan tach period is too long. The measurement cycle will repeat until monitoring is disabled. The fan speed measurement is stored in the Fan Speed Reading register at address 0x08. The fan speed count is given by: Count = (f x 60)/R x N where: f R N = = = 11.25 kHz Fan Speed in RPM. Speed Range (Either 1, 2, 4, or 8)
In situations where different output drive circuits are used for fan drive, it may be desirable to invert the PWM drive signal. Setting Bit 3 of Configuration Register 1 (0x00) to 1, inverts the PWM_OUT signal. This makes the PWM_OUT pin high for 100% duty cycle. Bit 3 of Configuration Register 1 should generally be set to 1, when using an n-MOS device to drive the fan. If using a p-MOS device, Bit 3 of Configuration Register 1 should be cleared to 0.
FAN FAULTS
The FAN_FAULT output (Pin 8) is an active-low, open-drain output used to signal fan failure to the system processor. Writing a Logic 1 to Bit 4 of Configuration Register 1 (0x00) enables the FAN_FAULT output pin. The FAN_FAULT output is enabled by default. The FAN_FAULT output asserts low only when five consecutive interrupts are generated by the ADM1030 device due to the fan running underspeed, or if the fan is completely stalled. Note that the Fan Tach High Limit must be exceeded by at least one before a FAN_FAULT can be generated. For example, if we are only interested in getting a FAN_FAULT if the fan stalls, then the fan speed value will be 0xFF for a failed fan. Therefore, we should make the Fan Tach High Limit = 0xFE to allow FAN_FAULT to be asserted after five consecutive fan tach failures. Figure 22 shows the relationship between INT, FAN_FAULT, and the PWM drive channel. The PWM_OUT channel is driving a fan at some PWM duty cycle, say 50%, and the fan's tach signal (or fan current for a 2-wire fan) is being monitored at the TACH/AIN pin. Tach pulses are being generated by the fan, during the high time of the PWM duty cycle train. The tach is pulled high during the off time of the PWM train because the fan is connected high-side to the n-MOS device. Suppose the fan has already failed its fan speed measurement twice previously. Looking at Figure 22, PWM_OUT is brought high for two seconds, to restart the fan if it has stalled. Sometime later a third tach failure occurs. This is evident by the tach signal being low during the high time of the PWM pulse, causing the Fan Speed Reading register to reach its maximum count of 255. Since the tach limit has been exceeded, an interrupt is generated on the INT pin. The Fan Fault bit (Bit 1) of Interrupt Status Register 1 (Register 0x02) will also be asserted. Once the processor has acknowledged the INT by reading the status register, the INT is cleared. PWM_OUT is then brought high for another 2 seconds to restart the fan. Subsequent fan failures cause INT to be reasserted and the PWM_OUT signal is brought high for 2 seconds (fan spin-up default) each time to restart the fan. Once the fifth tach failure occurs, the failure is deemed to be catastrophic, and the FAN_FAULT pin is asserted low. PWM_OUT is brought high to attempt to restart the fan. -21-
The frequency of the oscillator can be adjusted to suit the expected running speed of the fan by varying N, the Speed Range. The oscillator frequency is set by Bits 7 and 6 of Fan Characteristics Register 1 (20h) as shown in Table XI. Figure 21 shows how the fan measurements relate to the PWM_OUT pulse trains.
Table XI. Oscillator Frequencies
Bit 7 0 0 1 1
Bit 6 0 1 0 1
N 1 2 4 8
Oscillator Frequency (kHz) 11.25 5.625 2.812 1.406
REV. 0
ADM1030
The INT pin will continue to generate interrupts after the assertion of FAN_FAULT since tach measurement continues even after fan failure. Should the fan recover from its failure condition, the FAN_FAULT signal will be negated, and the fan will return to its normal operating speed. Figure 23 shows a typical application circuit for the ADM1030. Temperature monitoring can be based around a CPU diode or discrete transistor measuring thermal hotspots. Either 2- or 3-wire fans may be monitored by the ADM1030, as shown.
PWM_OUT
2 SECS
2 SECS
2 SECS
FULL SPEED
TACH/AIN 3RD TACH FAILURE INT 4TH TACH FAILURE 5TH TACH FAILURE
STATUS REG READ TO CLEAR INTERRUPT
CONTINUING TACH FAILURE
FAN_FAULT
Figure 22. Operation of FAN_FAULT and Interrupt Pins
3.3V 10k TYP. TACH
5V
FAN1 3-WIRE FAN
3.3V 3.3V 2.2k TYP. 2.2k TYP. SCL SDA PWM_OUT1 TACH1/AIN1 1 2 16 15 14 SCL SDA INT (SMBALERT) ADD 3.3V 10k TYP. CPU INTERRUPT
3.3V 10k TYP. NDT3055L
NC 3 NC 4 3.3V 3.3V THERM SIGNAL TO THROTTLE CPU CLOCK FAN_FAULT TO SIGNAL FAN FAILURE CONDITION 10k GND VCC 5 6 7 8
ADM1030
13
12 NC 11 NC 10 9 D+ D2N3904 OR PENTIUM III CPU THERMAL DIODE NC = NO CONNECT
THERM 3.3V 10k FAN_FAULT
Figure 23. Typical Application Circuit
-22-
REV. 0
ADM1030
Table XII. Registers
Register Name Value Registers Device ID Register
Address A7-A0 in Hex 0x06-0x1A 0x3D
Comments See Table XIII. This location contains the device identification number. Since this device is the ADM1030, this register contains 0x30. This register is read only. This location contains the company identification number (0x41). This register is read only. This location contains the revision number of the device. The lower four bits reflect device revisions [3:0]. Bit 7 of this register is the THERM-to-fan enable bit. See Table XXIV. See Table XIV. Power-on value = 1001 0000. See Table XV. Power-on value = 0111 1111. See Table XVI. Power-on value = 0000 0000. See Table XVII. Power-on value = 0000 0000. This register is used by the manufacturer for test purposes only. This register should not be read from or written to in normal operation. See Table XIX. Power-on value = 0101 1101. See Table XX. Power-on value = 0101 0101. See Table XXI. Power-on value = 0101 0101. See Table XXII. Power-on value = 0100 0001. See Table XXIII. Power-on value = 0110 0001.
Company ID THERM Behavior/Revision
0x3E 0x3F
Configuration Register 1 Configuration Register 2 Status Register 1 Status Register 2 Manufacturer's Test Register Fan Characteristics Register 1 Fan Speed Configuration Register Fan Filter Register Local Temperature TMIN/TRANGE Remote Temperature TMIN/TRANGE
0x00 0x01 0x02 0x03 0x07 0x20 0x22 0x23 0x24 0x25
Table XIII. Value and Limit Registers
Address 0x06 0x08 0x0A 0x0B 0x0D 0x0E 0x10
Read/Write Read/Only Read/Write Read/Only Read/Only Read/Write Read/Write Read/Write
Description Extended Temperature Resolution (see Table XVIII). Fan Speed Reading--this register contains the fan speed tach measurement. Local Temperature Value--this register contains the 8 MSBs of the local temperature measurement. Remote Temperature Value--this register contains the 8 MSBs of the remote temperature reading. Local Temperature Offset--See Table XXV. Remote Temperature Offset--See Table XXVI. Fan Tach High Limit--this register contains the limit for the fan tach measurement. Since the tach circuit counts between pulses, a slow fan will result in a large measured value, so exceeding the limit by one is the way to detect a slow or stalled fan. (Power-On Default = FFh) Local Temperature High Limit (Power-On Default 60C). Local Temperature Low Limit (Power-On Default 0C). Local Temperature Therm Limit (Power-On Default 70C). Remote Temperature High Limit (Power-On Default 80C). Remote Temperature Low Limit (Power-On Default 0C). Remote Temperature Therm Limit (Power-On Default 100C).
0x14 0x15 0x16 0x18 0x19 0x1A
Read/Write Read/Write Read/Write Read/Write Read/Write Read/Write
REV. 0
-23-
ADM1030
Table XIV. Register 0x00 Configuration Register 1 Power-On Default 90h
Bit 0 1 2
Name MONITOR INT Enable TACH/AIN
R/W Read/Write Read/Write Read/Write
Description Setting this bit to a "1" enables monitoring of temperature and enables measurement of the fan tach signals. (Power-Up Default = 0.) Setting this bit to a "1" enables the INT output. 1 = Enabled 0 = Disabled (Power-Up Default = 0). Clearing this bit to "0" selects digital fan speed measurement via the TACH pins. Setting this bit to "1" configures the TACH pins as analog inputs that can measure the speed of 2-wire fans via a sense resistor. (Power-Up Default = 0.) Setting this bit to "1" inverts the PWM signal on the output pin. (Power-Up Default = 0). The power-up default makes the PWM_OUT pin go low for 100% duty cycle (suitable for driving the fan using a PMOS device). Setting this bit to "1" makes the PWM_OUT pin high for 100% duty cycle (intended for driving the fan using an NMOS device). Logic 1 enables FAN_FAULT pin; Logic 0 disables FAN_FAULT output. (Power-Up Default = 1.) These two bits control the behavior of the fan in Auto Fan Speed Control Mode. 00 = Remote Temp controls Fan. (Program PWM duty cycle in Software Mode.) 11 = Fastest Calculated Speed Controls Fan. (Program RPM speed in Software Mode.) Logic 1 selects Automatic Fan Speed Control; Logic 0 selects SW control. (Power-Up Default = 1) When under software control, PWM duty cycle or RPM values may be programmed for the fan.
3
PWM Invert
Read/Write
4 6-5
Fan Fault Enable PWM Mode
Read/Write Read/Write
7
Auto/SW Ctrl
Read/Write
Table XV. Register 0x01 Configuration 2 Power-On Default = 7FH
Bit 0 1 2 3 4 5 6 7
Name PWM 1 En Unused TACH 1 En Unused Loc Temp En Remote Temp En Unused SW Reset
R/W Read/Write Read/Write Read/Write Read/Write Read/Write Read/Write Read/Write
Description Enables fan PWM output when this bit is a "1." Unused. Enables Tach input when set to "1." Enables Interrupts on Local Channel when set to "1." Enables Interrupts on Remote Channel when set to "1." Default is normally enabled, except when a diode fault is detected on power-up. Unused. When set to "1," resets the device. Self-clears. Power-Up Default = 0.
-24-
REV. 0
ADM1030
Table XVI. Register 0x02 Status Register 1 Power-On Default = 00H
Bit 0
Name Alarm Speed
R/W Read Only
Description This bit is set to "1" when fan is running at alarm speed. Once read, this bit will not reassert on next monitoring cycle, even if the fan is still running at alarm speed. This gives an indication as to when the fan is running full-speed, such as in a THERM condition. This bit is set to "1" if fan becomes stuck or is running under speed. Once read, this bit will reassert on next monitoring cycle, if the fan failure condition persists. "1" indicates Remote high temperature limit has been exceeded. If the temperature is still outside the Remote Temp High Limit, this bit will reassert on next monitoring cycle. "1" indicates Remote low temperature limit exceeded (below). If the temperature is still outside the Remote Temp Low Limit, this bit will reassert on next monitoring cycle. "1" indicates Remote temperature Therm limit has been exceeded. This bit is cleared on a read of Status Register 1. Once cleared, this bit will not get reasserted even if the THERM condition persists. This bit is set to "1" if a short or open is detected on the remote temperature channel. This test is only done on power-up, and if set to 1 cannot be cleared by reading the Status Register 1. "1" indicates Local Temp High Limit has been exceeded. If the temperature is still outside the Local Temp High Limit, this bit will reassert on next monitoring cycle. "1" indicates Local Temp Low Limit has been exceeded (below). If the temperature is still outside the Local Temp Low Limit, this bit will reassert on next monitoring cycle.
1
Fan Fault
Read Only
2
Remote Temp High
Read Only
3
Remote Temp Low
Read Only
4
Remote Temp Therm
Read Only
5
Remote Diode Error
Read Only
6
Loc Temp High
Read Only
7
Loc Temp Low
Read Only
Table XVII. Register 0x03 Status Register 2 Power-Up Default = 00H
Bit 0 1 2 3 4 5 6
Name Unused Unused Unused Unused Unused Unused Loc Therm THERM
R/W Read Only Read Only Read Only Read Only Read Only Read Only Read Only
Description Unused. Unused. Unused. Unused. Unused. Unused. "1" indicates Local temperature Therm limit has been exceeded. This bit clears on a read of Status Register 2. Once cleared, this bit will not be reasserted even if the THERM condition persists. Set to "1" when THERM is pulled low as an input. This bit clears on a read of Status Register 2. The fan also runs full-speed.
7
Read Only
Table XVIII. Register 0x06 Extended Temperature Resolution Power-On Default = 00H
Bit <2:0> <5:3> <7:6>
Name
R/W
Description Holds extended temperature resolution bits for Remote Temperature channel. Reserved. Holds extended temperature resolution bits for Local Temperature channel.
Remote Temp Read Only Reserved Read Only Local Temp Read Only
REV. 0
-25-
ADM1030
Table XIX. Register 0x20 Fan Characteristics Register 1 Power-On Default = 5DH
Bit <2:0>
Name Fan 1 Spin-up
R/W Read/Write
Description These bits contain the Fan Spin-up time to allow the fan to overcome its own inertia. 000 = 200 ms 001 = 400 ms 010 = 600 ms 011 = 800 ms 100 = 1 sec 101 = 2 secs (Default) 110 = 4 secs 111 = 8 secs These bits allow programmability of the nominal PWM output frequency driving the fan. (Default = 31 Hz.) 000 = 11.7 Hz 001 = 15.6 Hz 010 = 23.4 Hz 011 = 31.25 Hz (Default) 100 = 37.5 Hz 101 = 46.9 Hz 110 = 62.5 Hz 111 = 93.5 Hz These bits contain the Speed Range, N. 00 = 1 (Fail Speed = 2647 RPM) 01 = 2 (Fail Speed = 1324 RPM) 10 = 4 (Fail Speed = 662 RPM) 11 = 8 (Fail Speed = 331 RPM)
<5:3>
PWM 1 Frequency
Read/Write
<7:6>
Speed Range
Read/Write
Table XX. Register 0x22 Fan Speed Config Register Power-On Default = 05H
Bit <3:0>
Name Normal/Min Spd 1
R/W Read/Write
Description This nibble contains the normal speed value for the fan. When in Automatic Fan Speed Control Mode, this nibble contains the minimum speed at which the fan will run. Default is 0x05 for 33% PWM duty cycle. (See Table VII.) Unused.
<7:4>
Unused
Table XXI. Register 0x23 Fan Filter Register Power-On Default = 50H
Bit <7> <6:5>
Name Spin-Up Disable Ramp Rate
R/W Read/Write Read/Write
Description When set to 1, disables fan spin-up. These bits set the ramp rate for the PWM output. 00 = 1 01 = 2 10 = 4 11 = 8 These bits set the sampling rate for the ADC. 000 = 87.5 Hz 0.0625 Updates/sec 001 = 175 Hz 0.125 Updates/sec 010 = 350 Hz 0.25 Updates/sec 011 = 700 Hz 0.5 Updates/sec 100 = 1.4 kHz (Default) 1 Update/sec 101 = 2.8 kHz 2 Updates/sec 110 = 5.6 kHz 4 Updates/sec 111 = 11.2 kHz 8 Updates/sec Unused. Setting this bit to 1 enables filtering of the PWM_OUT signal.
<4:2>
ADC Sample Rate
Read/Write
<1> <0>
Unused Fan Filter En
Read/Write Read/Write
-26-
REV. 0
ADM1030
Table XXII. Register 0x24 Local Temp T MIN/TRANGE Power-On Default = 41H
Bit <7:3>
Name Local Temp TMIN
R/W Read/Write
Description Contains the minimum temperature value for Automatic Fan Speed Control based on Local Temperature Readings. TMIN can be programmed to positive values only in 4C increments. Default is 32C. 00000 = 0C 00001 = 4C 00010 = 8C 00011 = 12C | | 01000 = 32C (Default) | | | 11110 = 120C 11111 = 124C This nibble contains the temperature range value for Automatic Fan Speed Control based on the Local Temperature Readings. 000 = 5C 001 = 10C (Default) 010 = 20C 011 = 40C 100 = 80C
<2:0>
Local Temp TRANGE
Read/Write
Table XXIII. Register 0x25 Remote Temp T MIN/TRANGE Power-On Default = 61H
Bit <7:3>
Name Remote Temp TMIN
R/W Read/Write
Description Contains the minimum temperature value for Automatic Fan Speed Control based on Remote Temperature Readings. TMIN can be programmed to positive values only in 4C increments. Default is 48C. 00000 = 0C 00001 = 4C 00010 = 8C 00011 = 12C | | 01100 = 48C (Default) | | 11110 = 120C 11111 = 124C This nibble contains the temperature range value for Automatic Fan Speed Control based on the Remote 1 Temperature Readings. 000 = 5C 001 = 10C (Default) 010 = 20C 011 = 40C 100 = 80C
<2:0>
Remote Temp TRANGE
Read/Write
REV. 0
-27-
ADM1030
Table XXIV. Register 0x3F Therm Behavior/Revision Power-On Default = 80H
Bit <7>
Name Therm-to-Fan En
R/W Read/Write
Description Setting this bit to 1, enables the fan to run full-speed when THERM is asserted low. This allows the system to be run in performance mode. Clearing this bit to 0 disables the fan from running full-speed whenever THERM is asserted low. This allows the system to run in silent mode. (Power-On Default = 1.) Note that this bit has no effect whenever THERM is pulled low as an input. Unused. Read back zeros. This nibble contains the revision number for the ADM1030.
<6:4> <3:0>
Unused Revision
Read Only Read Only
Table XXV. Register 0x0D Local Temp Offset Power-On Default = 00H
Bit <7>
Name Sign
R/W Read/Write
Description When this bit is 0, the local offset will be added to the Local Temperature Reading. When this bit is set to 1, the local temperature offset will be subtracted from the Local Temperature Reading. Unused. Normally read back zeros. These four bits are used to add a two's complement offset to the Local Temperature Reading, allowing 15C to be added to or subtracted from the temperature reading.
<6:4> <3:0>
Reserved Local Offset
Read/Write Read/Write
Table XXVI. Register 0x0E Remote Temp Offset Power-On Default = 00H
Bit <7>
Name Sign
R/W Read/Write
Description When this bit is 0, the remote offset will be added to the Remote Temperature Reading. When this bit is set to 1, the remote temperature offset will be subtracted from the Remote Temperature Reading. Unused. Normally read back zeros. These four bits are used to add a two's complement offset to the Remote Temperature Reading, allowing 15C to be added to or subtracted from the temperature reading.
<6:4> <3:0>
Reserved Remote Offset
Read/Write Read/Write
OUTLINE DIMENSIONS
Dimensions shown in inches and (mm).
16-Lead QSOP Package (RQ-16)
0.197 (5.00) 0.189 (4.80)
16
9
0.157 (3.99) 0.150 (3.81)
1 8
0.244 (6.20) 0.228 (5.79)
PIN 1 0.059 (1.50) MAX
0.069 (1.75) 0.053 (1.35)
0.010 (0.25) 0.004 (0.10)
0.025 (0.64) BSC
8 0.012 (0.30) 0 SEATING 0.010 (0.20) 0.008 (0.20) PLANE 0.007 (0.18)
0.050 (1.27) 0.016 (0.41)
-28-
REV. 0
PRINTED IN U.S.A.
C02401-2.5-4/01(0)


▲Up To Search▲   

 
Price & Availability of ADM1030

All Rights Reserved © IC-ON-LINE 2003 - 2022  

[Add Bookmark] [Contact Us] [Link exchange] [Privacy policy]
Mirror Sites :  [www.datasheet.hk]   [www.maxim4u.com]  [www.ic-on-line.cn] [www.ic-on-line.com] [www.ic-on-line.net] [www.alldatasheet.com.cn] [www.gdcy.com]  [www.gdcy.net]


 . . . . .
  We use cookies to deliver the best possible web experience and assist with our advertising efforts. By continuing to use this site, you consent to the use of cookies. For more information on cookies, please take a look at our Privacy Policy. X